#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
Text-Tool 功能演示脚本
展示所有核心功能的使用方法
"""

from text_tool import count_words, remove_extra_spaces, fix_symbols, __version__

def demo_title(title):
    """打印演示标题"""
    print(f"\n{'='*50}")
    print(f"🎯 {title}")
    print(f"{'='*50}")

def demo_word_count():
    """演示字数统计功能"""
    demo_title("字数统计功能演示")
    
    test_cases = [
        ("Hello世界", "中英文混合"),
        ("don't worry about it", "撇号单词"),
        ("我在学习Python编程", "纯中文"),
        ("The price is $3.14", "包含特殊符号"),
        ("[1]王海燕.诗意表达与历史记忆的交织[J].新传奇,2025,(10):10-12.", "学术文献")
    ]
    
    for text, description in test_cases:
        general_count = count_words(text)
        word_count = count_words(text, word_compatible=True)
        
        print(f"\n📝 {description}: '{text}'")
        print(f"   通用模式: {general_count}字")
        print(f"   Word兼容: {word_count}字")

def demo_remove_spaces():
    """演示空格清理功能"""
    demo_title("空格清理功能演示")
    
    test_cases = [
        "这是 中文 之间 的空格",
        "This  is  multiple  spaces",
        "中文 English 混合文本",
        "   前后都有空格   ",
        "Smith  (2020)  认为  AI  很重要"
    ]
    
    for text in test_cases:
        cleaned = remove_extra_spaces(text)
        print(f"\n🧹 原文: '{text}'")
        print(f"   结果: '{cleaned}'")
        print(f"   变化: {'是' if text != cleaned else '否'}")

def demo_fix_symbols():
    """演示符号修复功能"""  
    demo_title("符号修复功能演示")
    
    test_cases = [
        ("这是中文(1)括号测试", "中文括号修复"),
        ("English（1）bracket test", "英文括号修复"),
        ("中文,逗号,测试", "中文标点修复"),
        ("这是中文句子.", "句号修复"),
        ("价格为$3.14,折扣10%.", "小数点保护"),
        ("缩写U.S.A.应保持", "缩写保护")
    ]
    
    for text, description in test_cases:
        fixed = fix_symbols(text)
        print(f"\n🔧 {description}: '{text}'")
        print(f"   结果: '{fixed}'")
        print(f"   变化: {'是' if text != fixed else '否'}")

def demo_integration():
    """演示功能集成使用"""
    demo_title("功能集成使用演示")
    
    # 模拟一个需要处理的学术文本
    original_text = """  
    [1] 张三 , 李四 . 基于深度学习的文本分析方法研究 (J) . 
    计算机科学 , 2024 , (3) : 45-52 .
    [2] Smith , John . AI and NLP : A comprehensive review [J] . 
    Nature , 2023 , (12) : 123-135 .
    """
    
    print(f"📄 原始文本:")
    print(f"'{original_text.strip()}'")
    
    # 第一步：清理空格
    print(f"\n🔄 处理流程:")
    cleaned = remove_extra_spaces(original_text)
    print(f"1️⃣ 清理空格: 长度从 {len(original_text)} → {len(cleaned)}")
    
    # 第二步：修复符号
    fixed = fix_symbols(cleaned)
    print(f"2️⃣ 修复符号: 长度从 {len(cleaned)} → {len(fixed)}")
    
    # 第三步：统计字数
    general_count = count_words(fixed, word_compatible=False)
    word_count = count_words(fixed, word_compatible=True)
    print(f"3️⃣ 字数统计: 通用模式 {general_count}字, Word模式 {word_count}字")
    
    print(f"\n✨ 最终结果:")
    print(f"'{fixed.strip()}'")

def main():
    """主演示函数"""
    print("🎉 欢迎使用 Text-Tool - 专业的文本处理工具库")
    print(f"📦 版本: {__version__}")
    print("🚀 开始功能演示...")
    
    # 各功能演示
    demo_word_count()
    demo_remove_spaces()  
    demo_fix_symbols()
    demo_integration()
    
    # 结束语
    demo_title("演示结束")
    print("🎊 Text-Tool 包含以下核心功能:")
    print("   ✅ 智能字数统计 (支持Word兼容模式)")
    print("   ✅ 多余空格清理 (中英文智能处理)")
    print("   ✅ 符号格式修复 (上下文感知)")
    print()
    print("📚 更多信息请参考 README.md")
    print("🔗 项目地址: https://github.com/yourusername/text-tool")
    print("📧 问题反馈: mooremmok@163.com")
    print()
    print("🙏 感谢使用 Text-Tool！")

if __name__ == "__main__":
    main()